import request from '@/utils/request'

// 获取学生可选课程列表（通过学生ID）
export function getAvailableCourses(studentId) {
  return request({
    url: `/course-selection/available/${studentId}`,
    method: 'get'
  })
}

// 获取当前登录学生的可选课程列表
export function getCurrentStudentAvailableCourses() {
  return request({
    url: '/course-selection/available',
    method: 'get'
  })
}

// 获取学生已选课程列表（通过学生ID）
export function getSelectedCourses(studentId) {
  return request({
    url: `/course-selection/selected/${studentId}`,
    method: 'get'
  })
}

// 获取当前登录学生的已选课程列表
export function getCurrentStudentSelectedCourses() {
  return request({
    url: '/course-selection/selected',
    method: 'get'
  })
}

// 学生选课（通过学生ID）
export function selectCourse(data) {
  return request({
    url: '/course-selection/select',
    method: 'post',
    data
  })
}

// 当前登录学生选课
export function selectCourseForCurrentStudent(data) {
  return request({
    url: '/course-selection/select-current',
    method: 'post',
    data
  })
}

// 学生退课（通过学生ID）
export function dropCourse(studentId, courseApplicationId) {
  return request({
    url: `/course-selection/drop/${studentId}/${courseApplicationId}`,
    method: 'delete'
  })
}

// 当前登录学生退课
export function dropCourseForCurrentStudent(courseApplicationId) {
  return request({
    url: `/course-selection/drop/${courseApplicationId}`,
    method: 'delete'
  })
}